package cn.biplam.front.component.view.mdManage;

import cn.biplam.common.bean.md.ModelThemeRootObj;
import cn.biplam.common.wrapper.ErrorMessage;
import cn.biplam.common.wrapper.UserInfo;
import cn.biplam.front.component.data.common.SelectComp;
import cn.biplam.front.html.base.HtmlWindow;
import cn.biplam.front.template.base.Select;

/**
 * 主题下拉列表选择组件
 * @author XiaoRuxing 2009-6-30下午02:26:03
 * @version 1.0
 */
public class ThemeSelect {
	
	
	/**
	 * 获取根主题下拉列表
	 * @param listPageID   页面ID
	 * @param defaultValue 默认值
	 * @param mUser        用户
	 * @param sHomeUrl     应用系统路径
	 * @param modelType    获取指定模型下的数据源
	 * @param excMid       需要排除的根主题
	 * @return 
	 * @throws ErrorMessage
	 */
	public static HtmlWindow getRoot(String listPageID,
			String defaultValue,
			UserInfo mUser,
			String sHomeUrl,
			String modelType) throws ErrorMessage{
		
		ModelThemeRootObj mtro = ModelThemeRootObj.getNewInstance(mUser,modelType);
		return new SelectComp().get(listPageID,defaultValue,sHomeUrl,mtro.getSelectResult().getSelectResult(),
				mtro.getTHEME_ID(), mtro.getTHEME_NAME());
	}
	
	/**
	 * 获取根主题下拉列表(排除指定的根主题)
	 * @param listPageID   页面ID
	 * @param defaultValue 默认值
	 * @param mUser        用户
	 * @param sHomeUrl     应用系统路径
	 * @param modelType    获取指定模型下的数据源
	 * @param excMid       需要排除的根主题
	 * @return 
	 * @throws ErrorMessage
	 */
	public static HtmlWindow getRootExc(String listPageID,
			String defaultValue,
			UserInfo mUser,
			String sHomeUrl,
			String modelType,
			String excMid) throws ErrorMessage{
		
		ModelThemeRootObj mtro = ModelThemeRootObj.getNewInstance(mUser,modelType,excMid);
		Select select=new Select(listPageID,defaultValue,sHomeUrl);
		do{
			select.set( mtro.getID(), mtro.getOrid()+"."+mtro.getName());
		}while(mtro.next());
		return select.get();
	}
}
